#ifndef FILEUTIL_H_
#define FILEUTIL_H_

#include <string>
#include <fstream>

namespace renderengine {
    class FileUtil {
    public:
        static bool exists(const std::string& filePath);
        static std::string getFileName(const std::string& filePath, bool withoutExt = true);
        static std::string getFileDir(const std::string& filePath);
        static std::string getFileExt(const std::string& filePath);
        static std::string getFileContent(const std::string& filePath);
        static size_t getFileSize(const std::string& filePath);
        static std::string renameFileExt(const std::string& filePath, const std::string& ext);
        static std::fstream* openFile(const std::string& path, std::ios_base::openmode mode);
        static std::string combineFilePath(const std::string& folder, const std::string& fileName);
    };
}

#endif
